1. Field of the Invention
This invention relates to instrumentation and computing systems and, more particularly, to synchronizing devices in an instrumentation and/or computing system.
2. Description of the Related Art
Control over the activities of real-time computing systems is often dictated by one of two different principles: time-triggered control and event-triggered control. In a time-triggered system, all activities are carried out at certain predesignated points in time. To achieve this, nodes in time-triggered systems have a common notion of time, typically through the use of synchronized clocks. In contrast, nodes in an event-triggered system carry out activities in response to relevant events, which do not happen at predesignated times.
One type of system that may be controlled according to a time-triggered or event-triggered control system is an instrumentation system. An instrument is a device that collects data or information from an environment or unit under test (UUT) and displays this information to a user. An instrument may also analyze and process acquired data prior to displaying the data to the user. Some instruments may be used to provide test stimuli to a UUT. Examples of instruments include oscilloscopes, digital multimeters, pressure sensors, arbitrary waveform generators, digital waveform generators, etc. The information that may be collected by respective instruments includes information describing voltage, resistance, distance, velocity, pressure, frequency of oscillation, humidity, or temperature, among others.
Computer-based instrumentation systems typically include transducers for transducing a physical phenomenon into an electrical signal, signal conditioning logic to perform amplification, isolation, and/or filtering, and analog-to-digital (A/D) conversion logic for receiving analog signals and providing corresponding digital signals to the host computer system.
In a computer-based system, the instrumentation hardware or device is typically an expansion board plugged into one of the I/O slots of the computer system. In another common instrumentation system configuration, the instrumentation hardware is coupled to the computer system via other means such as through a VXI (VME extensions for Instrumentation) bus, a PXI (PCI eXtensions for Instrumentation) bus, a GPIB (General Purpose Interface Bus), a serial port or bus, or parallel port of the computer system. The instrumentation hardware may include a DAQ board, a computer-based instrument such as a multimeter, or another type of instrumentation device.
Modern instrumentation systems may also include networked measurement systems. In a networked measurement system, two or more instrumentation or measurement devices may be coupled over a network and may operate together to perform a instrumentation or measurement function.
Some computer-based and/or network-based instrumentation systems include several instrumentation and/or DAQ devices. Each device may generate and/or capture data. Other resources within the system may process captured data. In order to synchronize devices within an instrumentation system, it may be desirable to use a time-triggered control system to synchronize the instrumentation system devices to a common time. However, it may also be desirable to have devices respond to external events within a certain amount of time. The external events may occur asynchronously to the common time. Existing solutions often use interrupt-based techniques to handle such asynchronous events by preempting or interrupting already-scheduled processes. However, interrupt-based handling may disrupt the operation of one or more system devices. Accordingly, it is desirable to have an instrumentation system controlled by a time-triggered control system that is able to handle asynchronous events in a non-disruptive manner. Similar performance may be desirable in other distributed systems such as control and monitoring systems.